Transforming inheritance into composition

نویسندگان

  • Benedikt Schulz
  • Thomas Genssler
چکیده

Transforming Inherintance into Composition is a reengineering pattern describing a solution to a recurring reengineering problem. The problem is that transforming an inheritance relationship into a component relationship using delegation without a ecting correctness and functionality of systems is a time-consuming and error-prone task. Solving this problem leads to more exible and more comprehensible systems. The problem is recurring, because cases of misuse of inheritance are very common in almost every object-oriented system. Solving the problem is time-consuming and errorprone because the necessary changes possibly a ect the whole system and thus cannot be performed locally.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Inheritance Decomposed Position Paper

Inheritance is often portrayed as a fundamental ingredient of object-oriented programming, one which is essential to building extensible software systems. However, inheritance is also a controversial mechanism with many competing and often contradictory interpretations, whose use can even impede extensibility in certain scenarios. Decomposing inheritance into the more basic mechanisms of object...

متن کامل

Transforming Rules and Trees into Comprehensible Knowledge Structures

The problem of transforming the knowledge bases of expert systems using induced rules or decision trees into comprehensible knowledge structures is addressed. A knowledge structure is developed that generalizes and subsumes production rules, decision trees, and rules with exceptions. It gives rise to a natural complexity measure that allows them to be understood, analyzed and compared on a unif...

متن کامل

Flattening versus direct semantics for

Inheritance in object-oriented languages allows, roughly, to obtain the same effect one would get by duplicating the methods of the parent class in the heir. However, the key advantage is that source code duplication is avoided, and the code of the parent is, instead, found on demand, through a runtime procedure called method lookup. In other words, two different semantics of inheritance can be...

متن کامل

Proof-Transforming Compilation of Eiffel Programs

In modern development schemes the processing of programs often involves an intermediate step of translation to some intermediate bytecode, complicating the verification task. Expanding on the ideas of Proof-Carrying Code (PCC), we have built a proof-transforming compiler which translates a contract-equipped program and its proof into bytecode representing both the program and the proof; before ...

متن کامل

Composition of Web Services Using Ontology with Monotonic Inheritance

OWL-S can’t provide sufficient support for automatic composition of web services because RDF and OIL don’t support overriding declaration in inheritance essentially. An ontology model capable of overriding declaration and expressing virtual class is defined by introducing into a monotonic inheritance mechanism. A method and framework of automatic composition of web services at knowledge level a...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999